package com.zhongwang.mms.gen.entity;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class MOrderDetailExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public MOrderDetailExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andOdaIdIsNull() {
            addCriterion("oda_id is null");
            return (Criteria) this;
        }

        public Criteria andOdaIdIsNotNull() {
            addCriterion("oda_id is not null");
            return (Criteria) this;
        }

        public Criteria andOdaIdEqualTo(Integer value) {
            addCriterion("oda_id =", value, "odaId");
            return (Criteria) this;
        }

        public Criteria andOdaIdNotEqualTo(Integer value) {
            addCriterion("oda_id <>", value, "odaId");
            return (Criteria) this;
        }

        public Criteria andOdaIdGreaterThan(Integer value) {
            addCriterion("oda_id >", value, "odaId");
            return (Criteria) this;
        }

        public Criteria andOdaIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("oda_id >=", value, "odaId");
            return (Criteria) this;
        }

        public Criteria andOdaIdLessThan(Integer value) {
            addCriterion("oda_id <", value, "odaId");
            return (Criteria) this;
        }

        public Criteria andOdaIdLessThanOrEqualTo(Integer value) {
            addCriterion("oda_id <=", value, "odaId");
            return (Criteria) this;
        }

        public Criteria andOdaIdIn(List<Integer> values) {
            addCriterion("oda_id in", values, "odaId");
            return (Criteria) this;
        }

        public Criteria andOdaIdNotIn(List<Integer> values) {
            addCriterion("oda_id not in", values, "odaId");
            return (Criteria) this;
        }

        public Criteria andOdaIdBetween(Integer value1, Integer value2) {
            addCriterion("oda_id between", value1, value2, "odaId");
            return (Criteria) this;
        }

        public Criteria andOdaIdNotBetween(Integer value1, Integer value2) {
            addCriterion("oda_id not between", value1, value2, "odaId");
            return (Criteria) this;
        }

        public Criteria andOdaInTypeIsNull() {
            addCriterion("oda_in_type is null");
            return (Criteria) this;
        }

        public Criteria andOdaInTypeIsNotNull() {
            addCriterion("oda_in_type is not null");
            return (Criteria) this;
        }

        public Criteria andOdaInTypeEqualTo(Integer value) {
            addCriterion("oda_in_type =", value, "odaInType");
            return (Criteria) this;
        }

        public Criteria andOdaInTypeNotEqualTo(Integer value) {
            addCriterion("oda_in_type <>", value, "odaInType");
            return (Criteria) this;
        }

        public Criteria andOdaInTypeGreaterThan(Integer value) {
            addCriterion("oda_in_type >", value, "odaInType");
            return (Criteria) this;
        }

        public Criteria andOdaInTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("oda_in_type >=", value, "odaInType");
            return (Criteria) this;
        }

        public Criteria andOdaInTypeLessThan(Integer value) {
            addCriterion("oda_in_type <", value, "odaInType");
            return (Criteria) this;
        }

        public Criteria andOdaInTypeLessThanOrEqualTo(Integer value) {
            addCriterion("oda_in_type <=", value, "odaInType");
            return (Criteria) this;
        }

        public Criteria andOdaInTypeIn(List<Integer> values) {
            addCriterion("oda_in_type in", values, "odaInType");
            return (Criteria) this;
        }

        public Criteria andOdaInTypeNotIn(List<Integer> values) {
            addCriterion("oda_in_type not in", values, "odaInType");
            return (Criteria) this;
        }

        public Criteria andOdaInTypeBetween(Integer value1, Integer value2) {
            addCriterion("oda_in_type between", value1, value2, "odaInType");
            return (Criteria) this;
        }

        public Criteria andOdaInTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("oda_in_type not between", value1, value2, "odaInType");
            return (Criteria) this;
        }

        public Criteria andOdaProCodeIsNull() {
            addCriterion("oda_pro_code is null");
            return (Criteria) this;
        }

        public Criteria andOdaProCodeIsNotNull() {
            addCriterion("oda_pro_code is not null");
            return (Criteria) this;
        }

        public Criteria andOdaProCodeEqualTo(String value) {
            addCriterion("oda_pro_code =", value, "odaProCode");
            return (Criteria) this;
        }

        public Criteria andOdaProCodeNotEqualTo(String value) {
            addCriterion("oda_pro_code <>", value, "odaProCode");
            return (Criteria) this;
        }

        public Criteria andOdaProCodeGreaterThan(String value) {
            addCriterion("oda_pro_code >", value, "odaProCode");
            return (Criteria) this;
        }

        public Criteria andOdaProCodeGreaterThanOrEqualTo(String value) {
            addCriterion("oda_pro_code >=", value, "odaProCode");
            return (Criteria) this;
        }

        public Criteria andOdaProCodeLessThan(String value) {
            addCriterion("oda_pro_code <", value, "odaProCode");
            return (Criteria) this;
        }

        public Criteria andOdaProCodeLessThanOrEqualTo(String value) {
            addCriterion("oda_pro_code <=", value, "odaProCode");
            return (Criteria) this;
        }

        public Criteria andOdaProCodeLike(String value) {
            addCriterion("oda_pro_code like", value, "odaProCode");
            return (Criteria) this;
        }

        public Criteria andOdaProCodeNotLike(String value) {
            addCriterion("oda_pro_code not like", value, "odaProCode");
            return (Criteria) this;
        }

        public Criteria andOdaProCodeIn(List<String> values) {
            addCriterion("oda_pro_code in", values, "odaProCode");
            return (Criteria) this;
        }

        public Criteria andOdaProCodeNotIn(List<String> values) {
            addCriterion("oda_pro_code not in", values, "odaProCode");
            return (Criteria) this;
        }

        public Criteria andOdaProCodeBetween(String value1, String value2) {
            addCriterion("oda_pro_code between", value1, value2, "odaProCode");
            return (Criteria) this;
        }

        public Criteria andOdaProCodeNotBetween(String value1, String value2) {
            addCriterion("oda_pro_code not between", value1, value2, "odaProCode");
            return (Criteria) this;
        }

        public Criteria andOdaProNameIsNull() {
            addCriterion("oda_pro_name is null");
            return (Criteria) this;
        }

        public Criteria andOdaProNameIsNotNull() {
            addCriterion("oda_pro_name is not null");
            return (Criteria) this;
        }

        public Criteria andOdaProNameEqualTo(String value) {
            addCriterion("oda_pro_name =", value, "odaProName");
            return (Criteria) this;
        }

        public Criteria andOdaProNameNotEqualTo(String value) {
            addCriterion("oda_pro_name <>", value, "odaProName");
            return (Criteria) this;
        }

        public Criteria andOdaProNameGreaterThan(String value) {
            addCriterion("oda_pro_name >", value, "odaProName");
            return (Criteria) this;
        }

        public Criteria andOdaProNameGreaterThanOrEqualTo(String value) {
            addCriterion("oda_pro_name >=", value, "odaProName");
            return (Criteria) this;
        }

        public Criteria andOdaProNameLessThan(String value) {
            addCriterion("oda_pro_name <", value, "odaProName");
            return (Criteria) this;
        }

        public Criteria andOdaProNameLessThanOrEqualTo(String value) {
            addCriterion("oda_pro_name <=", value, "odaProName");
            return (Criteria) this;
        }

        public Criteria andOdaProNameLike(String value) {
            addCriterion("oda_pro_name like", value, "odaProName");
            return (Criteria) this;
        }

        public Criteria andOdaProNameNotLike(String value) {
            addCriterion("oda_pro_name not like", value, "odaProName");
            return (Criteria) this;
        }

        public Criteria andOdaProNameIn(List<String> values) {
            addCriterion("oda_pro_name in", values, "odaProName");
            return (Criteria) this;
        }

        public Criteria andOdaProNameNotIn(List<String> values) {
            addCriterion("oda_pro_name not in", values, "odaProName");
            return (Criteria) this;
        }

        public Criteria andOdaProNameBetween(String value1, String value2) {
            addCriterion("oda_pro_name between", value1, value2, "odaProName");
            return (Criteria) this;
        }

        public Criteria andOdaProNameNotBetween(String value1, String value2) {
            addCriterion("oda_pro_name not between", value1, value2, "odaProName");
            return (Criteria) this;
        }

        public Criteria andOdaNumIsNull() {
            addCriterion("oda_num is null");
            return (Criteria) this;
        }

        public Criteria andOdaNumIsNotNull() {
            addCriterion("oda_num is not null");
            return (Criteria) this;
        }

        public Criteria andOdaNumEqualTo(Double value) {
            addCriterion("oda_num =", value, "odaNum");
            return (Criteria) this;
        }

        public Criteria andOdaNumNotEqualTo(Double value) {
            addCriterion("oda_num <>", value, "odaNum");
            return (Criteria) this;
        }

        public Criteria andOdaNumGreaterThan(Double value) {
            addCriterion("oda_num >", value, "odaNum");
            return (Criteria) this;
        }

        public Criteria andOdaNumGreaterThanOrEqualTo(Double value) {
            addCriterion("oda_num >=", value, "odaNum");
            return (Criteria) this;
        }

        public Criteria andOdaNumLessThan(Double value) {
            addCriterion("oda_num <", value, "odaNum");
            return (Criteria) this;
        }

        public Criteria andOdaNumLessThanOrEqualTo(Double value) {
            addCriterion("oda_num <=", value, "odaNum");
            return (Criteria) this;
        }

        public Criteria andOdaNumIn(List<Double> values) {
            addCriterion("oda_num in", values, "odaNum");
            return (Criteria) this;
        }

        public Criteria andOdaNumNotIn(List<Double> values) {
            addCriterion("oda_num not in", values, "odaNum");
            return (Criteria) this;
        }

        public Criteria andOdaNumBetween(Double value1, Double value2) {
            addCriterion("oda_num between", value1, value2, "odaNum");
            return (Criteria) this;
        }

        public Criteria andOdaNumNotBetween(Double value1, Double value2) {
            addCriterion("oda_num not between", value1, value2, "odaNum");
            return (Criteria) this;
        }

        public Criteria andOdaWeightIsNull() {
            addCriterion("oda_weight is null");
            return (Criteria) this;
        }

        public Criteria andOdaWeightIsNotNull() {
            addCriterion("oda_weight is not null");
            return (Criteria) this;
        }

        public Criteria andOdaWeightEqualTo(Double value) {
            addCriterion("oda_weight =", value, "odaWeight");
            return (Criteria) this;
        }

        public Criteria andOdaWeightNotEqualTo(Double value) {
            addCriterion("oda_weight <>", value, "odaWeight");
            return (Criteria) this;
        }

        public Criteria andOdaWeightGreaterThan(Double value) {
            addCriterion("oda_weight >", value, "odaWeight");
            return (Criteria) this;
        }

        public Criteria andOdaWeightGreaterThanOrEqualTo(Double value) {
            addCriterion("oda_weight >=", value, "odaWeight");
            return (Criteria) this;
        }

        public Criteria andOdaWeightLessThan(Double value) {
            addCriterion("oda_weight <", value, "odaWeight");
            return (Criteria) this;
        }

        public Criteria andOdaWeightLessThanOrEqualTo(Double value) {
            addCriterion("oda_weight <=", value, "odaWeight");
            return (Criteria) this;
        }

        public Criteria andOdaWeightIn(List<Double> values) {
            addCriterion("oda_weight in", values, "odaWeight");
            return (Criteria) this;
        }

        public Criteria andOdaWeightNotIn(List<Double> values) {
            addCriterion("oda_weight not in", values, "odaWeight");
            return (Criteria) this;
        }

        public Criteria andOdaWeightBetween(Double value1, Double value2) {
            addCriterion("oda_weight between", value1, value2, "odaWeight");
            return (Criteria) this;
        }

        public Criteria andOdaWeightNotBetween(Double value1, Double value2) {
            addCriterion("oda_weight not between", value1, value2, "odaWeight");
            return (Criteria) this;
        }

        public Criteria andOdaBackDateIsNull() {
            addCriterion("oda_back_date is null");
            return (Criteria) this;
        }

        public Criteria andOdaBackDateIsNotNull() {
            addCriterion("oda_back_date is not null");
            return (Criteria) this;
        }

        public Criteria andOdaBackDateEqualTo(String value) {
            addCriterion("oda_back_date =", value, "odaBackDate");
            return (Criteria) this;
        }

        public Criteria andOdaBackDateNotEqualTo(String value) {
            addCriterion("oda_back_date <>", value, "odaBackDate");
            return (Criteria) this;
        }

        public Criteria andOdaBackDateGreaterThan(String value) {
            addCriterion("oda_back_date >", value, "odaBackDate");
            return (Criteria) this;
        }

        public Criteria andOdaBackDateGreaterThanOrEqualTo(String value) {
            addCriterion("oda_back_date >=", value, "odaBackDate");
            return (Criteria) this;
        }

        public Criteria andOdaBackDateLessThan(String value) {
            addCriterion("oda_back_date <", value, "odaBackDate");
            return (Criteria) this;
        }

        public Criteria andOdaBackDateLessThanOrEqualTo(String value) {
            addCriterion("oda_back_date <=", value, "odaBackDate");
            return (Criteria) this;
        }

        public Criteria andOdaBackDateLike(String value) {
            addCriterion("oda_back_date like", value, "odaBackDate");
            return (Criteria) this;
        }

        public Criteria andOdaBackDateNotLike(String value) {
            addCriterion("oda_back_date not like", value, "odaBackDate");
            return (Criteria) this;
        }

        public Criteria andOdaBackDateIn(List<String> values) {
            addCriterion("oda_back_date in", values, "odaBackDate");
            return (Criteria) this;
        }

        public Criteria andOdaBackDateNotIn(List<String> values) {
            addCriterion("oda_back_date not in", values, "odaBackDate");
            return (Criteria) this;
        }

        public Criteria andOdaBackDateBetween(String value1, String value2) {
            addCriterion("oda_back_date between", value1, value2, "odaBackDate");
            return (Criteria) this;
        }

        public Criteria andOdaBackDateNotBetween(String value1, String value2) {
            addCriterion("oda_back_date not between", value1, value2, "odaBackDate");
            return (Criteria) this;
        }

        public Criteria andOdaTrackCodeIsNull() {
            addCriterion("oda_track_code is null");
            return (Criteria) this;
        }

        public Criteria andOdaTrackCodeIsNotNull() {
            addCriterion("oda_track_code is not null");
            return (Criteria) this;
        }

        public Criteria andOdaTrackCodeEqualTo(String value) {
            addCriterion("oda_track_code =", value, "odaTrackCode");
            return (Criteria) this;
        }

        public Criteria andOdaTrackCodeNotEqualTo(String value) {
            addCriterion("oda_track_code <>", value, "odaTrackCode");
            return (Criteria) this;
        }

        public Criteria andOdaTrackCodeGreaterThan(String value) {
            addCriterion("oda_track_code >", value, "odaTrackCode");
            return (Criteria) this;
        }

        public Criteria andOdaTrackCodeGreaterThanOrEqualTo(String value) {
            addCriterion("oda_track_code >=", value, "odaTrackCode");
            return (Criteria) this;
        }

        public Criteria andOdaTrackCodeLessThan(String value) {
            addCriterion("oda_track_code <", value, "odaTrackCode");
            return (Criteria) this;
        }

        public Criteria andOdaTrackCodeLessThanOrEqualTo(String value) {
            addCriterion("oda_track_code <=", value, "odaTrackCode");
            return (Criteria) this;
        }

        public Criteria andOdaTrackCodeLike(String value) {
            addCriterion("oda_track_code like", value, "odaTrackCode");
            return (Criteria) this;
        }

        public Criteria andOdaTrackCodeNotLike(String value) {
            addCriterion("oda_track_code not like", value, "odaTrackCode");
            return (Criteria) this;
        }

        public Criteria andOdaTrackCodeIn(List<String> values) {
            addCriterion("oda_track_code in", values, "odaTrackCode");
            return (Criteria) this;
        }

        public Criteria andOdaTrackCodeNotIn(List<String> values) {
            addCriterion("oda_track_code not in", values, "odaTrackCode");
            return (Criteria) this;
        }

        public Criteria andOdaTrackCodeBetween(String value1, String value2) {
            addCriterion("oda_track_code between", value1, value2, "odaTrackCode");
            return (Criteria) this;
        }

        public Criteria andOdaTrackCodeNotBetween(String value1, String value2) {
            addCriterion("oda_track_code not between", value1, value2, "odaTrackCode");
            return (Criteria) this;
        }

        public Criteria andOdaOdrIdIsNull() {
            addCriterion("oda_odr_id is null");
            return (Criteria) this;
        }

        public Criteria andOdaOdrIdIsNotNull() {
            addCriterion("oda_odr_id is not null");
            return (Criteria) this;
        }

        public Criteria andOdaOdrIdEqualTo(Integer value) {
            addCriterion("oda_odr_id =", value, "odaOdrId");
            return (Criteria) this;
        }

        public Criteria andOdaOdrIdNotEqualTo(Integer value) {
            addCriterion("oda_odr_id <>", value, "odaOdrId");
            return (Criteria) this;
        }

        public Criteria andOdaOdrIdGreaterThan(Integer value) {
            addCriterion("oda_odr_id >", value, "odaOdrId");
            return (Criteria) this;
        }

        public Criteria andOdaOdrIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("oda_odr_id >=", value, "odaOdrId");
            return (Criteria) this;
        }

        public Criteria andOdaOdrIdLessThan(Integer value) {
            addCriterion("oda_odr_id <", value, "odaOdrId");
            return (Criteria) this;
        }

        public Criteria andOdaOdrIdLessThanOrEqualTo(Integer value) {
            addCriterion("oda_odr_id <=", value, "odaOdrId");
            return (Criteria) this;
        }

        public Criteria andOdaOdrIdIn(List<Integer> values) {
            addCriterion("oda_odr_id in", values, "odaOdrId");
            return (Criteria) this;
        }

        public Criteria andOdaOdrIdNotIn(List<Integer> values) {
            addCriterion("oda_odr_id not in", values, "odaOdrId");
            return (Criteria) this;
        }

        public Criteria andOdaOdrIdBetween(Integer value1, Integer value2) {
            addCriterion("oda_odr_id between", value1, value2, "odaOdrId");
            return (Criteria) this;
        }

        public Criteria andOdaOdrIdNotBetween(Integer value1, Integer value2) {
            addCriterion("oda_odr_id not between", value1, value2, "odaOdrId");
            return (Criteria) this;
        }

        public Criteria andOdaMatIdIsNull() {
            addCriterion("oda_mat_id is null");
            return (Criteria) this;
        }

        public Criteria andOdaMatIdIsNotNull() {
            addCriterion("oda_mat_id is not null");
            return (Criteria) this;
        }

        public Criteria andOdaMatIdEqualTo(Integer value) {
            addCriterion("oda_mat_id =", value, "odaMatId");
            return (Criteria) this;
        }

        public Criteria andOdaMatIdNotEqualTo(Integer value) {
            addCriterion("oda_mat_id <>", value, "odaMatId");
            return (Criteria) this;
        }

        public Criteria andOdaMatIdGreaterThan(Integer value) {
            addCriterion("oda_mat_id >", value, "odaMatId");
            return (Criteria) this;
        }

        public Criteria andOdaMatIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("oda_mat_id >=", value, "odaMatId");
            return (Criteria) this;
        }

        public Criteria andOdaMatIdLessThan(Integer value) {
            addCriterion("oda_mat_id <", value, "odaMatId");
            return (Criteria) this;
        }

        public Criteria andOdaMatIdLessThanOrEqualTo(Integer value) {
            addCriterion("oda_mat_id <=", value, "odaMatId");
            return (Criteria) this;
        }

        public Criteria andOdaMatIdIn(List<Integer> values) {
            addCriterion("oda_mat_id in", values, "odaMatId");
            return (Criteria) this;
        }

        public Criteria andOdaMatIdNotIn(List<Integer> values) {
            addCriterion("oda_mat_id not in", values, "odaMatId");
            return (Criteria) this;
        }

        public Criteria andOdaMatIdBetween(Integer value1, Integer value2) {
            addCriterion("oda_mat_id between", value1, value2, "odaMatId");
            return (Criteria) this;
        }

        public Criteria andOdaMatIdNotBetween(Integer value1, Integer value2) {
            addCriterion("oda_mat_id not between", value1, value2, "odaMatId");
            return (Criteria) this;
        }

        public Criteria andOdaSpecIsNull() {
            addCriterion("oda_spec is null");
            return (Criteria) this;
        }

        public Criteria andOdaSpecIsNotNull() {
            addCriterion("oda_spec is not null");
            return (Criteria) this;
        }

        public Criteria andOdaSpecEqualTo(String value) {
            addCriterion("oda_spec =", value, "odaSpec");
            return (Criteria) this;
        }

        public Criteria andOdaSpecNotEqualTo(String value) {
            addCriterion("oda_spec <>", value, "odaSpec");
            return (Criteria) this;
        }

        public Criteria andOdaSpecGreaterThan(String value) {
            addCriterion("oda_spec >", value, "odaSpec");
            return (Criteria) this;
        }

        public Criteria andOdaSpecGreaterThanOrEqualTo(String value) {
            addCriterion("oda_spec >=", value, "odaSpec");
            return (Criteria) this;
        }

        public Criteria andOdaSpecLessThan(String value) {
            addCriterion("oda_spec <", value, "odaSpec");
            return (Criteria) this;
        }

        public Criteria andOdaSpecLessThanOrEqualTo(String value) {
            addCriterion("oda_spec <=", value, "odaSpec");
            return (Criteria) this;
        }

        public Criteria andOdaSpecLike(String value) {
            addCriterion("oda_spec like", value, "odaSpec");
            return (Criteria) this;
        }

        public Criteria andOdaSpecNotLike(String value) {
            addCriterion("oda_spec not like", value, "odaSpec");
            return (Criteria) this;
        }

        public Criteria andOdaSpecIn(List<String> values) {
            addCriterion("oda_spec in", values, "odaSpec");
            return (Criteria) this;
        }

        public Criteria andOdaSpecNotIn(List<String> values) {
            addCriterion("oda_spec not in", values, "odaSpec");
            return (Criteria) this;
        }

        public Criteria andOdaSpecBetween(String value1, String value2) {
            addCriterion("oda_spec between", value1, value2, "odaSpec");
            return (Criteria) this;
        }

        public Criteria andOdaSpecNotBetween(String value1, String value2) {
            addCriterion("oda_spec not between", value1, value2, "odaSpec");
            return (Criteria) this;
        }

        public Criteria andOdaBackWeightIsNull() {
            addCriterion("oda_back_weight is null");
            return (Criteria) this;
        }

        public Criteria andOdaBackWeightIsNotNull() {
            addCriterion("oda_back_weight is not null");
            return (Criteria) this;
        }

        public Criteria andOdaBackWeightEqualTo(String value) {
            addCriterion("oda_back_weight =", value, "odaBackWeight");
            return (Criteria) this;
        }

        public Criteria andOdaBackWeightNotEqualTo(String value) {
            addCriterion("oda_back_weight <>", value, "odaBackWeight");
            return (Criteria) this;
        }

        public Criteria andOdaBackWeightGreaterThan(String value) {
            addCriterion("oda_back_weight >", value, "odaBackWeight");
            return (Criteria) this;
        }

        public Criteria andOdaBackWeightGreaterThanOrEqualTo(String value) {
            addCriterion("oda_back_weight >=", value, "odaBackWeight");
            return (Criteria) this;
        }

        public Criteria andOdaBackWeightLessThan(String value) {
            addCriterion("oda_back_weight <", value, "odaBackWeight");
            return (Criteria) this;
        }

        public Criteria andOdaBackWeightLessThanOrEqualTo(String value) {
            addCriterion("oda_back_weight <=", value, "odaBackWeight");
            return (Criteria) this;
        }

        public Criteria andOdaBackWeightLike(String value) {
            addCriterion("oda_back_weight like", value, "odaBackWeight");
            return (Criteria) this;
        }

        public Criteria andOdaBackWeightNotLike(String value) {
            addCriterion("oda_back_weight not like", value, "odaBackWeight");
            return (Criteria) this;
        }

        public Criteria andOdaBackWeightIn(List<String> values) {
            addCriterion("oda_back_weight in", values, "odaBackWeight");
            return (Criteria) this;
        }

        public Criteria andOdaBackWeightNotIn(List<String> values) {
            addCriterion("oda_back_weight not in", values, "odaBackWeight");
            return (Criteria) this;
        }

        public Criteria andOdaBackWeightBetween(String value1, String value2) {
            addCriterion("oda_back_weight between", value1, value2, "odaBackWeight");
            return (Criteria) this;
        }

        public Criteria andOdaBackWeightNotBetween(String value1, String value2) {
            addCriterion("oda_back_weight not between", value1, value2, "odaBackWeight");
            return (Criteria) this;
        }

        public Criteria andOdaPriceIsNull() {
            addCriterion("oda_price is null");
            return (Criteria) this;
        }

        public Criteria andOdaPriceIsNotNull() {
            addCriterion("oda_price is not null");
            return (Criteria) this;
        }

        public Criteria andOdaPriceEqualTo(Double value) {
            addCriterion("oda_price =", value, "odaPrice");
            return (Criteria) this;
        }

        public Criteria andOdaPriceNotEqualTo(Double value) {
            addCriterion("oda_price <>", value, "odaPrice");
            return (Criteria) this;
        }

        public Criteria andOdaPriceGreaterThan(Double value) {
            addCriterion("oda_price >", value, "odaPrice");
            return (Criteria) this;
        }

        public Criteria andOdaPriceGreaterThanOrEqualTo(Double value) {
            addCriterion("oda_price >=", value, "odaPrice");
            return (Criteria) this;
        }

        public Criteria andOdaPriceLessThan(Double value) {
            addCriterion("oda_price <", value, "odaPrice");
            return (Criteria) this;
        }

        public Criteria andOdaPriceLessThanOrEqualTo(Double value) {
            addCriterion("oda_price <=", value, "odaPrice");
            return (Criteria) this;
        }

        public Criteria andOdaPriceIn(List<Double> values) {
            addCriterion("oda_price in", values, "odaPrice");
            return (Criteria) this;
        }

        public Criteria andOdaPriceNotIn(List<Double> values) {
            addCriterion("oda_price not in", values, "odaPrice");
            return (Criteria) this;
        }

        public Criteria andOdaPriceBetween(Double value1, Double value2) {
            addCriterion("oda_price between", value1, value2, "odaPrice");
            return (Criteria) this;
        }

        public Criteria andOdaPriceNotBetween(Double value1, Double value2) {
            addCriterion("oda_price not between", value1, value2, "odaPrice");
            return (Criteria) this;
        }

        public Criteria andOdaItyIdIsNull() {
            addCriterion("oda_ity_id is null");
            return (Criteria) this;
        }

        public Criteria andOdaItyIdIsNotNull() {
            addCriterion("oda_ity_id is not null");
            return (Criteria) this;
        }

        public Criteria andOdaItyIdEqualTo(Integer value) {
            addCriterion("oda_ity_id =", value, "odaItyId");
            return (Criteria) this;
        }

        public Criteria andOdaItyIdNotEqualTo(Integer value) {
            addCriterion("oda_ity_id <>", value, "odaItyId");
            return (Criteria) this;
        }

        public Criteria andOdaItyIdGreaterThan(Integer value) {
            addCriterion("oda_ity_id >", value, "odaItyId");
            return (Criteria) this;
        }

        public Criteria andOdaItyIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("oda_ity_id >=", value, "odaItyId");
            return (Criteria) this;
        }

        public Criteria andOdaItyIdLessThan(Integer value) {
            addCriterion("oda_ity_id <", value, "odaItyId");
            return (Criteria) this;
        }

        public Criteria andOdaItyIdLessThanOrEqualTo(Integer value) {
            addCriterion("oda_ity_id <=", value, "odaItyId");
            return (Criteria) this;
        }

        public Criteria andOdaItyIdIn(List<Integer> values) {
            addCriterion("oda_ity_id in", values, "odaItyId");
            return (Criteria) this;
        }

        public Criteria andOdaItyIdNotIn(List<Integer> values) {
            addCriterion("oda_ity_id not in", values, "odaItyId");
            return (Criteria) this;
        }

        public Criteria andOdaItyIdBetween(Integer value1, Integer value2) {
            addCriterion("oda_ity_id between", value1, value2, "odaItyId");
            return (Criteria) this;
        }

        public Criteria andOdaItyIdNotBetween(Integer value1, Integer value2) {
            addCriterion("oda_ity_id not between", value1, value2, "odaItyId");
            return (Criteria) this;
        }

        public Criteria andOdaItyFlagIsNull() {
            addCriterion("oda_ity_flag is null");
            return (Criteria) this;
        }

        public Criteria andOdaItyFlagIsNotNull() {
            addCriterion("oda_ity_flag is not null");
            return (Criteria) this;
        }

        public Criteria andOdaItyFlagEqualTo(Integer value) {
            addCriterion("oda_ity_flag =", value, "odaItyFlag");
            return (Criteria) this;
        }

        public Criteria andOdaItyFlagNotEqualTo(Integer value) {
            addCriterion("oda_ity_flag <>", value, "odaItyFlag");
            return (Criteria) this;
        }

        public Criteria andOdaItyFlagGreaterThan(Integer value) {
            addCriterion("oda_ity_flag >", value, "odaItyFlag");
            return (Criteria) this;
        }

        public Criteria andOdaItyFlagGreaterThanOrEqualTo(Integer value) {
            addCriterion("oda_ity_flag >=", value, "odaItyFlag");
            return (Criteria) this;
        }

        public Criteria andOdaItyFlagLessThan(Integer value) {
            addCriterion("oda_ity_flag <", value, "odaItyFlag");
            return (Criteria) this;
        }

        public Criteria andOdaItyFlagLessThanOrEqualTo(Integer value) {
            addCriterion("oda_ity_flag <=", value, "odaItyFlag");
            return (Criteria) this;
        }

        public Criteria andOdaItyFlagIn(List<Integer> values) {
            addCriterion("oda_ity_flag in", values, "odaItyFlag");
            return (Criteria) this;
        }

        public Criteria andOdaItyFlagNotIn(List<Integer> values) {
            addCriterion("oda_ity_flag not in", values, "odaItyFlag");
            return (Criteria) this;
        }

        public Criteria andOdaItyFlagBetween(Integer value1, Integer value2) {
            addCriterion("oda_ity_flag between", value1, value2, "odaItyFlag");
            return (Criteria) this;
        }

        public Criteria andOdaItyFlagNotBetween(Integer value1, Integer value2) {
            addCriterion("oda_ity_flag not between", value1, value2, "odaItyFlag");
            return (Criteria) this;
        }

        public Criteria andOdaRedFlagIsNull() {
            addCriterion("oda_red_flag is null");
            return (Criteria) this;
        }

        public Criteria andOdaRedFlagIsNotNull() {
            addCriterion("oda_red_flag is not null");
            return (Criteria) this;
        }

        public Criteria andOdaRedFlagEqualTo(Integer value) {
            addCriterion("oda_red_flag =", value, "odaRedFlag");
            return (Criteria) this;
        }

        public Criteria andOdaRedFlagNotEqualTo(Integer value) {
            addCriterion("oda_red_flag <>", value, "odaRedFlag");
            return (Criteria) this;
        }

        public Criteria andOdaRedFlagGreaterThan(Integer value) {
            addCriterion("oda_red_flag >", value, "odaRedFlag");
            return (Criteria) this;
        }

        public Criteria andOdaRedFlagGreaterThanOrEqualTo(Integer value) {
            addCriterion("oda_red_flag >=", value, "odaRedFlag");
            return (Criteria) this;
        }

        public Criteria andOdaRedFlagLessThan(Integer value) {
            addCriterion("oda_red_flag <", value, "odaRedFlag");
            return (Criteria) this;
        }

        public Criteria andOdaRedFlagLessThanOrEqualTo(Integer value) {
            addCriterion("oda_red_flag <=", value, "odaRedFlag");
            return (Criteria) this;
        }

        public Criteria andOdaRedFlagIn(List<Integer> values) {
            addCriterion("oda_red_flag in", values, "odaRedFlag");
            return (Criteria) this;
        }

        public Criteria andOdaRedFlagNotIn(List<Integer> values) {
            addCriterion("oda_red_flag not in", values, "odaRedFlag");
            return (Criteria) this;
        }

        public Criteria andOdaRedFlagBetween(Integer value1, Integer value2) {
            addCriterion("oda_red_flag between", value1, value2, "odaRedFlag");
            return (Criteria) this;
        }

        public Criteria andOdaRedFlagNotBetween(Integer value1, Integer value2) {
            addCriterion("oda_red_flag not between", value1, value2, "odaRedFlag");
            return (Criteria) this;
        }

        public Criteria andOdaRedDateIsNull() {
            addCriterion("oda_red_date is null");
            return (Criteria) this;
        }

        public Criteria andOdaRedDateIsNotNull() {
            addCriterion("oda_red_date is not null");
            return (Criteria) this;
        }

        public Criteria andOdaRedDateEqualTo(Date value) {
            addCriterion("oda_red_date =", value, "odaRedDate");
            return (Criteria) this;
        }

        public Criteria andOdaRedDateNotEqualTo(Date value) {
            addCriterion("oda_red_date <>", value, "odaRedDate");
            return (Criteria) this;
        }

        public Criteria andOdaRedDateGreaterThan(Date value) {
            addCriterion("oda_red_date >", value, "odaRedDate");
            return (Criteria) this;
        }

        public Criteria andOdaRedDateGreaterThanOrEqualTo(Date value) {
            addCriterion("oda_red_date >=", value, "odaRedDate");
            return (Criteria) this;
        }

        public Criteria andOdaRedDateLessThan(Date value) {
            addCriterion("oda_red_date <", value, "odaRedDate");
            return (Criteria) this;
        }

        public Criteria andOdaRedDateLessThanOrEqualTo(Date value) {
            addCriterion("oda_red_date <=", value, "odaRedDate");
            return (Criteria) this;
        }

        public Criteria andOdaRedDateIn(List<Date> values) {
            addCriterion("oda_red_date in", values, "odaRedDate");
            return (Criteria) this;
        }

        public Criteria andOdaRedDateNotIn(List<Date> values) {
            addCriterion("oda_red_date not in", values, "odaRedDate");
            return (Criteria) this;
        }

        public Criteria andOdaRedDateBetween(Date value1, Date value2) {
            addCriterion("oda_red_date between", value1, value2, "odaRedDate");
            return (Criteria) this;
        }

        public Criteria andOdaRedDateNotBetween(Date value1, Date value2) {
            addCriterion("oda_red_date not between", value1, value2, "odaRedDate");
            return (Criteria) this;
        }

        public Criteria andOdaRedUserIsNull() {
            addCriterion("oda_red_user is null");
            return (Criteria) this;
        }

        public Criteria andOdaRedUserIsNotNull() {
            addCriterion("oda_red_user is not null");
            return (Criteria) this;
        }

        public Criteria andOdaRedUserEqualTo(String value) {
            addCriterion("oda_red_user =", value, "odaRedUser");
            return (Criteria) this;
        }

        public Criteria andOdaRedUserNotEqualTo(String value) {
            addCriterion("oda_red_user <>", value, "odaRedUser");
            return (Criteria) this;
        }

        public Criteria andOdaRedUserGreaterThan(String value) {
            addCriterion("oda_red_user >", value, "odaRedUser");
            return (Criteria) this;
        }

        public Criteria andOdaRedUserGreaterThanOrEqualTo(String value) {
            addCriterion("oda_red_user >=", value, "odaRedUser");
            return (Criteria) this;
        }

        public Criteria andOdaRedUserLessThan(String value) {
            addCriterion("oda_red_user <", value, "odaRedUser");
            return (Criteria) this;
        }

        public Criteria andOdaRedUserLessThanOrEqualTo(String value) {
            addCriterion("oda_red_user <=", value, "odaRedUser");
            return (Criteria) this;
        }

        public Criteria andOdaRedUserLike(String value) {
            addCriterion("oda_red_user like", value, "odaRedUser");
            return (Criteria) this;
        }

        public Criteria andOdaRedUserNotLike(String value) {
            addCriterion("oda_red_user not like", value, "odaRedUser");
            return (Criteria) this;
        }

        public Criteria andOdaRedUserIn(List<String> values) {
            addCriterion("oda_red_user in", values, "odaRedUser");
            return (Criteria) this;
        }

        public Criteria andOdaRedUserNotIn(List<String> values) {
            addCriterion("oda_red_user not in", values, "odaRedUser");
            return (Criteria) this;
        }

        public Criteria andOdaRedUserBetween(String value1, String value2) {
            addCriterion("oda_red_user between", value1, value2, "odaRedUser");
            return (Criteria) this;
        }

        public Criteria andOdaRedUserNotBetween(String value1, String value2) {
            addCriterion("oda_red_user not between", value1, value2, "odaRedUser");
            return (Criteria) this;
        }

        public Criteria andOdaCadIdIsNull() {
            addCriterion("oda_cad_id is null");
            return (Criteria) this;
        }

        public Criteria andOdaCadIdIsNotNull() {
            addCriterion("oda_cad_id is not null");
            return (Criteria) this;
        }

        public Criteria andOdaCadIdEqualTo(Integer value) {
            addCriterion("oda_cad_id =", value, "odaCadId");
            return (Criteria) this;
        }

        public Criteria andOdaCadIdNotEqualTo(Integer value) {
            addCriterion("oda_cad_id <>", value, "odaCadId");
            return (Criteria) this;
        }

        public Criteria andOdaCadIdGreaterThan(Integer value) {
            addCriterion("oda_cad_id >", value, "odaCadId");
            return (Criteria) this;
        }

        public Criteria andOdaCadIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("oda_cad_id >=", value, "odaCadId");
            return (Criteria) this;
        }

        public Criteria andOdaCadIdLessThan(Integer value) {
            addCriterion("oda_cad_id <", value, "odaCadId");
            return (Criteria) this;
        }

        public Criteria andOdaCadIdLessThanOrEqualTo(Integer value) {
            addCriterion("oda_cad_id <=", value, "odaCadId");
            return (Criteria) this;
        }

        public Criteria andOdaCadIdIn(List<Integer> values) {
            addCriterion("oda_cad_id in", values, "odaCadId");
            return (Criteria) this;
        }

        public Criteria andOdaCadIdNotIn(List<Integer> values) {
            addCriterion("oda_cad_id not in", values, "odaCadId");
            return (Criteria) this;
        }

        public Criteria andOdaCadIdBetween(Integer value1, Integer value2) {
            addCriterion("oda_cad_id between", value1, value2, "odaCadId");
            return (Criteria) this;
        }

        public Criteria andOdaCadIdNotBetween(Integer value1, Integer value2) {
            addCriterion("oda_cad_id not between", value1, value2, "odaCadId");
            return (Criteria) this;
        }

        public Criteria andOdaPositionIsNull() {
            addCriterion("oda_position is null");
            return (Criteria) this;
        }

        public Criteria andOdaPositionIsNotNull() {
            addCriterion("oda_position is not null");
            return (Criteria) this;
        }

        public Criteria andOdaPositionEqualTo(String value) {
            addCriterion("oda_position =", value, "odaPosition");
            return (Criteria) this;
        }

        public Criteria andOdaPositionNotEqualTo(String value) {
            addCriterion("oda_position <>", value, "odaPosition");
            return (Criteria) this;
        }

        public Criteria andOdaPositionGreaterThan(String value) {
            addCriterion("oda_position >", value, "odaPosition");
            return (Criteria) this;
        }

        public Criteria andOdaPositionGreaterThanOrEqualTo(String value) {
            addCriterion("oda_position >=", value, "odaPosition");
            return (Criteria) this;
        }

        public Criteria andOdaPositionLessThan(String value) {
            addCriterion("oda_position <", value, "odaPosition");
            return (Criteria) this;
        }

        public Criteria andOdaPositionLessThanOrEqualTo(String value) {
            addCriterion("oda_position <=", value, "odaPosition");
            return (Criteria) this;
        }

        public Criteria andOdaPositionLike(String value) {
            addCriterion("oda_position like", value, "odaPosition");
            return (Criteria) this;
        }

        public Criteria andOdaPositionNotLike(String value) {
            addCriterion("oda_position not like", value, "odaPosition");
            return (Criteria) this;
        }

        public Criteria andOdaPositionIn(List<String> values) {
            addCriterion("oda_position in", values, "odaPosition");
            return (Criteria) this;
        }

        public Criteria andOdaPositionNotIn(List<String> values) {
            addCriterion("oda_position not in", values, "odaPosition");
            return (Criteria) this;
        }

        public Criteria andOdaPositionBetween(String value1, String value2) {
            addCriterion("oda_position between", value1, value2, "odaPosition");
            return (Criteria) this;
        }

        public Criteria andOdaPositionNotBetween(String value1, String value2) {
            addCriterion("oda_position not between", value1, value2, "odaPosition");
            return (Criteria) this;
        }

        public Criteria andOdaAmountIsNull() {
            addCriterion("oda_amount is null");
            return (Criteria) this;
        }

        public Criteria andOdaAmountIsNotNull() {
            addCriterion("oda_amount is not null");
            return (Criteria) this;
        }

        public Criteria andOdaAmountEqualTo(Double value) {
            addCriterion("oda_amount =", value, "odaAmount");
            return (Criteria) this;
        }

        public Criteria andOdaAmountNotEqualTo(Double value) {
            addCriterion("oda_amount <>", value, "odaAmount");
            return (Criteria) this;
        }

        public Criteria andOdaAmountGreaterThan(Double value) {
            addCriterion("oda_amount >", value, "odaAmount");
            return (Criteria) this;
        }

        public Criteria andOdaAmountGreaterThanOrEqualTo(Double value) {
            addCriterion("oda_amount >=", value, "odaAmount");
            return (Criteria) this;
        }

        public Criteria andOdaAmountLessThan(Double value) {
            addCriterion("oda_amount <", value, "odaAmount");
            return (Criteria) this;
        }

        public Criteria andOdaAmountLessThanOrEqualTo(Double value) {
            addCriterion("oda_amount <=", value, "odaAmount");
            return (Criteria) this;
        }

        public Criteria andOdaAmountIn(List<Double> values) {
            addCriterion("oda_amount in", values, "odaAmount");
            return (Criteria) this;
        }

        public Criteria andOdaAmountNotIn(List<Double> values) {
            addCriterion("oda_amount not in", values, "odaAmount");
            return (Criteria) this;
        }

        public Criteria andOdaAmountBetween(Double value1, Double value2) {
            addCriterion("oda_amount between", value1, value2, "odaAmount");
            return (Criteria) this;
        }

        public Criteria andOdaAmountNotBetween(Double value1, Double value2) {
            addCriterion("oda_amount not between", value1, value2, "odaAmount");
            return (Criteria) this;
        }

        public Criteria andOdaMatSapCodeIsNull() {
            addCriterion("oda_mat_sap_code is null");
            return (Criteria) this;
        }

        public Criteria andOdaMatSapCodeIsNotNull() {
            addCriterion("oda_mat_sap_code is not null");
            return (Criteria) this;
        }

        public Criteria andOdaMatSapCodeEqualTo(String value) {
            addCriterion("oda_mat_sap_code =", value, "odaMatSapCode");
            return (Criteria) this;
        }

        public Criteria andOdaMatSapCodeNotEqualTo(String value) {
            addCriterion("oda_mat_sap_code <>", value, "odaMatSapCode");
            return (Criteria) this;
        }

        public Criteria andOdaMatSapCodeGreaterThan(String value) {
            addCriterion("oda_mat_sap_code >", value, "odaMatSapCode");
            return (Criteria) this;
        }

        public Criteria andOdaMatSapCodeGreaterThanOrEqualTo(String value) {
            addCriterion("oda_mat_sap_code >=", value, "odaMatSapCode");
            return (Criteria) this;
        }

        public Criteria andOdaMatSapCodeLessThan(String value) {
            addCriterion("oda_mat_sap_code <", value, "odaMatSapCode");
            return (Criteria) this;
        }

        public Criteria andOdaMatSapCodeLessThanOrEqualTo(String value) {
            addCriterion("oda_mat_sap_code <=", value, "odaMatSapCode");
            return (Criteria) this;
        }

        public Criteria andOdaMatSapCodeLike(String value) {
            addCriterion("oda_mat_sap_code like", value, "odaMatSapCode");
            return (Criteria) this;
        }

        public Criteria andOdaMatSapCodeNotLike(String value) {
            addCriterion("oda_mat_sap_code not like", value, "odaMatSapCode");
            return (Criteria) this;
        }

        public Criteria andOdaMatSapCodeIn(List<String> values) {
            addCriterion("oda_mat_sap_code in", values, "odaMatSapCode");
            return (Criteria) this;
        }

        public Criteria andOdaMatSapCodeNotIn(List<String> values) {
            addCriterion("oda_mat_sap_code not in", values, "odaMatSapCode");
            return (Criteria) this;
        }

        public Criteria andOdaMatSapCodeBetween(String value1, String value2) {
            addCriterion("oda_mat_sap_code between", value1, value2, "odaMatSapCode");
            return (Criteria) this;
        }

        public Criteria andOdaMatSapCodeNotBetween(String value1, String value2) {
            addCriterion("oda_mat_sap_code not between", value1, value2, "odaMatSapCode");
            return (Criteria) this;
        }

        public Criteria andOdaTypeIsNull() {
            addCriterion("oda_type is null");
            return (Criteria) this;
        }

        public Criteria andOdaTypeIsNotNull() {
            addCriterion("oda_type is not null");
            return (Criteria) this;
        }

        public Criteria andOdaTypeEqualTo(Integer value) {
            addCriterion("oda_type =", value, "odaType");
            return (Criteria) this;
        }

        public Criteria andOdaTypeNotEqualTo(Integer value) {
            addCriterion("oda_type <>", value, "odaType");
            return (Criteria) this;
        }

        public Criteria andOdaTypeGreaterThan(Integer value) {
            addCriterion("oda_type >", value, "odaType");
            return (Criteria) this;
        }

        public Criteria andOdaTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("oda_type >=", value, "odaType");
            return (Criteria) this;
        }

        public Criteria andOdaTypeLessThan(Integer value) {
            addCriterion("oda_type <", value, "odaType");
            return (Criteria) this;
        }

        public Criteria andOdaTypeLessThanOrEqualTo(Integer value) {
            addCriterion("oda_type <=", value, "odaType");
            return (Criteria) this;
        }

        public Criteria andOdaTypeIn(List<Integer> values) {
            addCriterion("oda_type in", values, "odaType");
            return (Criteria) this;
        }

        public Criteria andOdaTypeNotIn(List<Integer> values) {
            addCriterion("oda_type not in", values, "odaType");
            return (Criteria) this;
        }

        public Criteria andOdaTypeBetween(Integer value1, Integer value2) {
            addCriterion("oda_type between", value1, value2, "odaType");
            return (Criteria) this;
        }

        public Criteria andOdaTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("oda_type not between", value1, value2, "odaType");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}